
import Vue from 'vue'
import Router from 'vue-router'

// 登录组件
import Login from '../components/Login.vue'

// 首页组件
import Home from '../components/Home.vue'

// 首页欢迎组件
import Welcome from '../components/Welcome.vue'

// 用户列表组件
import Users from '../components/user/Users.vue'

// 角色列表组件
import Roles from '../components/role/Roles.vue'

Vue.use(Router)

const router = new Router({
  mode: 'hash',
  routes: [
    {
      path: '/',
      redirect: '/login'
    },
    {
      path: '/login',
      component: Login
    },
    {
      path: '/home',
      component: Home,
      redirect: 'welcome',
      children: [{
        path: '/welcome',
        component: Welcome
      }, {
        path: '/users',
        component: Users
      }, {
        path: '/roles',
        component: Roles
      }]
    }
  ]
})

// 挂载路由导航守卫
router.beforeEach((to, from, next) => {
  // to 将要访问的路径

  // from 代表从哪个路径跳转而来

  // next 是一个函数，表示放行
  // next() 放行   next('/login')  强制跳转

  if (to.path === '/login') return next()
  // 获取token
  const tokenStr = window.sessionStorage.getItem('token')

  if (!tokenStr) next('/login')
  next()




})

export default router